/*
 * Create in 2012-12-17 上午11:18:36.
 */
package kit4j.util.lang;

import java.util.Collection;
import java.util.List;

/**
 * 
 * @author MiniKnife
 * 
 */
public abstract class CollectionUtil {

	/**
	 * 判断给定的<code>Collection</code>是否为空。
	 * 
	 * @param col
	 *            <code>Collection</code>对象
	 * @return 如果给定的<code>Collection</code>对象为null或者不包含任何值，则返回true，否则返回false。
	 */
	public static boolean isEmpty(Collection<?> col) {
		return col == null || col.isEmpty();
	}

	/**
	 * 获取给定<code>List</code>的第一个元素。
	 * 
	 * @param col
	 *            <code>List</code>对象
	 * @return 如果给定的<code>List</code>对象不为空，则返回该<code>List</code>对象的第一个元素，否则返回null。
	 */
	public static <T> T getFirst(List<T> col) {
		if (!isEmpty(col)) {
			return col.get(0);
		} else {
			return null;
		}
	}

	/**
	 * 获取给定<code>List</code>的第一个元素。
	 * 
	 * @param col
	 *            <code>List</code>对象
	 * @return 如果给定的<code>List</code>对象不为空，则返回该<code>List</code>对象的最后一个元素，否则返回null。
	 */
	public static <T> T getLast(List<T> col) {
		if (!isEmpty(col)) {
			return col.get(col.size() - 1);
		} else {
			return null;
		}
	}
	
}
